home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 44 / PC Actual CD 44.iso / Demos / Flash / flash4full.exe / data1.cab / App_Files / Help / search.jar / SearchThread.class (.txt) < prev   
Encoding:
Java Class File  |  1998-08-20  |  2.3 KB  |  72 lines

  1. import java.text.MessageFormat;
  2.  
  3. class SearchThread extends Thread {
  4.    // $FF: renamed from: sa SearchApplet4ech
  5.    SearchApplet4ech field_0;
  6.    // $FF: renamed from: sf SearchFrame
  7.    SearchFrame field_1;
  8.    String[] phrases;
  9.    String[] filedata;
  10.    String[] lc_filedata;
  11.    boolean case_sen;
  12.  
  13.    SearchThread(SearchApplet4ech var1, SearchFrame var2, String[] var3, String[] var4, String[] var5, boolean var6) {
  14.       this.field_0 = var1;
  15.       this.field_1 = var2;
  16.       this.phrases = var3;
  17.       this.filedata = var4;
  18.       this.lc_filedata = var5;
  19.       this.case_sen = var6;
  20.    }
  21.  
  22.    public void run() {
  23.       long var1 = System.currentTimeMillis();
  24.       this.field_0.setStopSearch(false);
  25.       this.field_0.clearMatchedDocuments();
  26.       this.field_1.clearList();
  27.       this.field_1.setStatus("");
  28.       int var3 = 0;
  29.       int var4 = 0;
  30.  
  31.       for(int var5 = 0; var5 < this.filedata.length; ++var5) {
  32.          var3 = var5 + 1;
  33.          if (this.field_0.getStopSearch()) {
  34.             this.field_0.setStopSearch(false);
  35.             break;
  36.          }
  37.  
  38.          boolean var6 = true;
  39.  
  40.          for(int var7 = 0; var7 < this.phrases.length; ++var7) {
  41.             if (!this.case_sen && this.lc_filedata[var5] == null) {
  42.                this.lc_filedata[var5] = this.filedata[var5].toLowerCase();
  43.                this.field_0.setLowerCaseFileData(var5, this.lc_filedata[var5]);
  44.             }
  45.  
  46.             String var8 = this.case_sen ? this.filedata[var5] : this.lc_filedata[var5];
  47.             if (var8.indexOf(this.phrases[var7]) == -1) {
  48.                var6 = false;
  49.                break;
  50.             }
  51.          }
  52.  
  53.          if (var6) {
  54.             ++var4;
  55.             int var12 = this.filedata[var5].indexOf("<title>");
  56.             String var9 = var12 > -1 ? this.filedata[var5].substring(var12 + 7, this.filedata[var5].indexOf("</title>")) : "Untitled";
  57.             this.field_1.updateList(var9);
  58.             this.field_0.addMatchedDocument(var5);
  59.          }
  60.       }
  61.  
  62.       String[] var10 = new String[]{String.valueOf(var4), String.valueOf(var3), String.valueOf(this.filedata.length)};
  63.       String var11 = this.field_0.getMessage("search.search_complete_count_matched");
  64.       this.field_1.setStatus(MessageFormat.format(var11, var10));
  65.       if (this.field_0.getTimedStatus()) {
  66.          long var13 = System.currentTimeMillis() - var1;
  67.          System.out.println("Search Time: " + var13 + "ms");
  68.       }
  69.  
  70.    }
  71. }
  72.